package cn.iune.erp.purchase;

import java.util.Map;

import com.alibaba.fastjson.JSONObject;
import com.itextpdf.text.Document;

import cn.iune.erp.inventory.StorageRecord;

public interface IPurchaseService {

	Map<String, Object> purchaseOrderAgreeIt(String rowID, String ucode, String uname, String uid);

	void purchaseOrderPrintPDF(String fID, Document doc) throws Exception;


	Map<String, Object> purchaseOrderUnAgree(String rowID, String ucode, String uname, String uid);

	Map<String, Object> purchaseOrderConfirm(String rowID, String ucode, String uname, String uid);

	Map<String, Object> purchaseOrderActive(String rowID, String ucode, String uname, String uid);

	Map<String, Object> purchaseOrderClose(String rowID, String ucode, String uname, String uid);

	Map<String, Object> purchaseOrderOpen(String rowID, String ucode, String uname, String uid);

	void afterInsertOrderDetail(PurchaseOrderDetail obj);

	void beforeDeleteOrderDetail(String fID);

	void invCGCKPrintPDF(String fID, Document doc) throws Exception;

	JSONObject accountingEntry(String fID, String cUsercode, String cUsername, String userId, String employeeNo,
			String employeeName);

	StorageRecord storageRecordCGRKInsert(PurchaseOrder purchaseOrder, String cUsercode, String cUsername,
			String userId, String autoState, int flowType, String autoPayment, String employeeNo, String employeeName);

	Map<String, Object> storageRecordConfirm(String rowID, String cUsercode, String cUsername, String userId,
			String employeeNo, String employeeName);

	Map<String, Object> storageRecordActive(String rowID, String cUsercode, String cUsername, String userId,
			String employeeNo, String employeeName);

	Map<String, Object> storageRecordAgreeIt(String rowID, String cUsercode, String cUsername, String userId,
			String employeeNo, String employeeName);

	Map<String, Object> storageRecordUnAgree(String rowID, String cUsercode, String cUsername, String userId,
			String employeeNo, String employeeName);

	Map<String, Object> storageRecordClose(String rowID, String cUsercode, String cUsername, String userId,
			String employeeNo, String employeeName);

	Map<String, Object> storageRecordOpen(String rowID, String cUsercode, String cUsername, String userId,
			String employeeNo, String employeeName);

	StorageRecord storageRecordBACKInsert(StorageRecord storageSource, String cUsercode, String cUsername,
			String userId, String autoState, int flowType, String autoPayment, String employeeNo, String employeeName);

	void invCGRKPrintPDF(String fID, Document doc) throws Exception;






}